home *** CD-ROM | disk | FTP | other *** search
/ Fantasy 5 / FANTASY5.iso / Karnacje / Harry Potter and the Chamber of Secrets.wmz / hp.js < prev    next >
Text (UTF-16)  |  2002-11-11  |  23KB  |  573 lines

  1. /*
  2.     http://www.theskinsfactory.com
  3.     info@theskinsfactory.com
  4. */
  5.  
  6. function introAnim(){
  7.     shutterSub.backgroundImage = "shutter_open.gif";
  8.     view.timerInterval = 0;
  9. }
  10.  
  11. var shutterStatus = false;
  12.  
  13. function toggleShutter(){
  14.     if(!shutterStatus){
  15.         shutterSub.backgroundImage = "shutter_close.gif";
  16.         shutterStatic.visible = true;
  17.         mainButtons.visible = false;
  18.         shutterStatus = !shutterStatus;
  19.     }else{
  20.         shutterSub.backgroundImage = "shutter_open.gif";
  21.         shutterStatic.visible = false;
  22.         mainButtons.visible = true;
  23.         shutterStatus = !shutterStatus;
  24.     }
  25. }
  26.  
  27. function mainStartUp(){
  28.     volume.value = player.settings.volume;
  29.     loadMainPrefs();
  30.     checkPlayerState();
  31. }
  32.  
  33. function checkPlayerState(){
  34.  
  35.     if (player){
  36.         switch (player.playState){
  37.  
  38.             case 3:     //playing
  39.                 if(player.currentMedia.ImageSourceWidth>0){
  40.                     theme.openView('videoView');
  41.                     if("true"==theme.loadPreference("visViewer")){
  42.                         theme.savePreference("visViewer", "false");
  43.                         theme.closeView( "visView" );
  44.                     }
  45.                     break
  46.                 }
  47.                 playBacAnim.visible = true;
  48.                 break;
  49.  
  50.             }
  51.             
  52.         }
  53.  
  54.     if (!player.controls.isAvailable("Stop")) {
  55.         playBacAnim.visible = false;
  56.     }
  57.     updateMetadata();
  58. }
  59.  
  60. // metadata
  61.  
  62. function updateMetadata(){
  63.  
  64.     if(player.openState!=13) return;
  65.  
  66.     metadata.value = player.status;
  67.  
  68.     authorppl = player.currentmedia.getiteminfo("#author");
  69.  
  70.     if (authorppl == "") {
  71.         authorppl = player.currentmedia.getiteminfo("author");
  72.     }
  73.  
  74.     if (authorppl != "") {
  75.         authorppl += " - ";
  76.     }
  77.  
  78.     if (metadata.value != "") {
  79.         metadata.value += " - ";
  80.     }
  81.  
  82.     metadata.value += authorppl;
  83.     metadata.value += player.currentmedia.name;
  84.     metadata.scrolling = (metadata.textWidth>metadata.width);
  85.     
  86. }
  87.  
  88.  
  89. // button and hotkey definitions
  90.  
  91. // open file
  92. function openFile(){
  93.     var media = theme.openDialog('FILE_OPEN','FILES_ALLMEDIA');
  94.     if (media) {
  95.         player.URL = media;
  96.         player.controls.play();
  97.     }
  98. }
  99.  
  100. function viewHotKeys(){
  101.     switch(event.keycode){
  102.         case 122:
  103.         case 90:
  104.             player.controls.previous();
  105.             break;
  106.         case 120:
  107.         case 88:
  108.             player.controls.play();
  109.             break;
  110.         case 99:
  111.         case 67:
  112.             player.controls.pause();
  113.             break;
  114.         case 118:
  115.         case 86:
  116.             player.controls.stop();
  117.             break;
  118.         case 98:
  119.         case 66:
  120.             player.controls.next();
  121.             break;
  122.         case 108:
  123.         case 76:
  124.             openFile();
  125.             break;
  126.     }
  127. }
  128.  
  129. function viewResizer(event){
  130.     switch(event.keycode){
  131.         case 37:
  132.             view.width-=20;
  133.             break;
  134.         case 38:
  135.             view.height-=20
  136.             break;
  137.         case 39:
  138.             view.width+=20;
  139.             break;
  140.         case 40:
  141.             view.height+=20;
  142.             break;
  143.         }
  144. }
  145.  
  146. function updateToolTip(id,button,tip){
  147.     if("true"==theme.loadPreference( id )){
  148.         eval( button +".upToolTip = 'Hide " + tip + "'" );
  149.     }else{
  150.         eval( button +".upToolTip = 'Show " + tip + "'" );
  151.     }
  152. }
  153.  
  154. function updateVolToolTip(){
  155.     volume.toolTip = "";
  156.     volume.toolTip += player.settings.volume;
  157. }
  158.  
  159. function updateShuffRep(){
  160.     if(player.settings.getMode('shuffle')){
  161.         shuffleButton.down = true;
  162.     }else{
  163.         shuffleButton.down = false;
  164.     }
  165.  
  166.     if(player.settings.getMode('loop')){
  167.         repeatButton.down = true;
  168.     }else{
  169.         repeatButton.down = false;
  170.     }
  171. }
  172.  
  173. // view toggle 
  174.  
  175. function toggleView(name,id){
  176.     if("true"==theme.loadPreference(id)){
  177.         theme.savePreference(id, "false");
  178.         theme.closeView( name );
  179.     }else{
  180.         theme.openView( name );
  181.     }
  182. }
  183.  
  184. function closeView(id){
  185.     theme.savePreference(id, "false");
  186.     if( id=="vidViewer" && player.currentMedia.ImageSourceWidth>0 ){
  187.         player.controls.stop();
  188.     }
  189.     view.close();
  190. }
  191.  
  192. function autoSizeView(width,height){
  193.     var viewSize = theme.loadPreference( width );
  194.  
  195.     if( "--" != viewSize )
  196.     {
  197.         view.width = viewSize;
  198.     }else{
  199.         view.width = view.minWidth;
  200.     }
  201.  
  202.     viewSize = theme.loadpreference( height );
  203.  
  204.     if( "--" != viewSize )
  205.     {
  206.         view.height = viewSize;
  207.     }else{
  208.         view.height = view.minHeight;
  209.     }
  210. }
  211.  
  212. function saveViewSize(width,height){
  213.     theme.savepreference( width , view.width );
  214.     theme.savepreference( height , view.height );
  215. }
  216.  
  217. // preferences
  218.  
  219. function loadMainPrefs(){
  220.  
  221.     if ("true"==theme.loadPreference("plViewer")){
  222.         theme.openView( 'plView' );
  223.     }
  224.  
  225.     if ("true"==theme.loadPreference("visViewer")){
  226.         theme.openView( 'visView' );
  227.     }
  228.  
  229.     if ("true"==theme.loadPreference("eqViewer")){
  230.         theme.openView( 'eqView' );
  231.     }
  232.  
  233.     if ("true"==theme.loadPreference("infoViewer")){
  234.         theme.openView( 'infoView' );
  235.     }
  236. }
  237.  
  238. function saveMainPrefs() {
  239.  
  240. }
  241.  
  242. function mainShutDown(){
  243.     saveMainPrefs();
  244. }
  245.  
  246. // playlist
  247. function loadPlPrefs(){
  248.     theme.savePreference( 'plViewer', "true" );
  249.  
  250.     autoSizeView('plWidth','plHeight');
  251.  
  252.     plFrame.setColumnResizeMode( 0, "stretches" );
  253.     plFrame.setColumnResizeMode( 1, "autosizedata" );
  254.     plFrame.setColumnResizeMode( 2, "autosizedata" );
  255.     plFrame.setColumnResizeMode( 3, "autosizedata" );
  256.  
  257. }
  258.  
  259. function savePlPrefs(){
  260.     saveViewSize('plWidth','plHeight');
  261. }
  262.  
  263. // equalizer
  264. function loadEQPrefs(){
  265.     theme.savePreference( 'eqViewer', "true" );
  266. }
  267.  
  268. // visualizations
  269. function loadVisPrefs(){
  270.     theme.savePreference( 'visViewer', "true" );
  271.     visEffects.currentEffectType = mediacenter.effectType;
  272.     visEffects.currentPreset = mediacenter.effectPreset;
  273.  
  274.     autoSizeView('visWidth','visHeight');
  275.  
  276.     checkVisualsPlayerState()
  277. }
  278.  
  279. function saveVisPrefs(){
  280.     mediacenter.effectType = visEffects.currentEffectType;
  281.     mediacenter.effectPreset = visEffects.currentPreset;
  282.     saveViewSize('visWidth','visHeight');
  283. }
  284.  
  285. function checkVisualsPlayerState(){
  286.  
  287.     if (player){
  288.         switch (player.playState){
  289.             case 0:        //undefined
  290.                 
  291.                 break;
  292.             case 1:        //stopped
  293.  
  294.                 break;
  295.             case 2:        //paused
  296.  
  297.                 break;
  298.             case 3:     //playing
  299.                 //visMask.visible = true;
  300.                 break;
  301.             case 6:        //buffering
  302.                 
  303.                 break;
  304.             case 7:        //waiting
  305.                 
  306.                 break;
  307.             case 8:        //media ended
  308.                 
  309.                 break;
  310.             case 9:        //Transitioning
  311.                 
  312.                 break;
  313.             case 10:    //Ready
  314.                 
  315.                 break;
  316.             }
  317.         }
  318.  
  319.     if (!player.controls.isAvailable("Stop")) {
  320.         //visMask.visible = false;
  321.     }
  322. }
  323.  
  324. function displayVisText(){
  325.     visEffectsText.visible = true;
  326.     visEffectsText.value = visEffects.currentEffectTitle + ": " + visEffects.currentPresetTitle;
  327.     visView.timerInterval = 6000
  328. }
  329.  
  330. function hideVisText(){
  331.     visEffectsText.visible = false;
  332.     visView.timerInterval = 0
  333. }
  334.  
  335. // video
  336.  
  337. function loadVidPrefs(){
  338.     var _drawerStatus = theme.loadPreference('drawerStatus');
  339.  
  340.     if (_drawerStatus != '--') {
  341.         drawerStatus = (_drawerStatus.toLowerCase() == 'true') ? false : true;
  342.     } else {
  343.         drawerStatus = true;
  344.     }
  345.  
  346.     checkSnapStatus();
  347.     checkVideoPlayerState();
  348.     updateZoomToolTip();
  349.     toggleVidDrawer();
  350. }
  351.  
  352. function saveVidPrefs(){
  353.     theme.savePreference('drawerStatus',drawerStatus);
  354. }
  355.  
  356. function loadVidSize(){
  357.     var vidSizer = theme.loadPreference( "videoWidth" );
  358.  
  359.     if( "--" != vidSizer )
  360.     {
  361.         view.width = vidSizer;
  362.     }
  363.     vidSizer = theme.loadpreference( "videoHeight" );
  364.  
  365.     if( "--" != vidSizer )
  366.     {
  367.         view.height = vidSizer;
  368.     }
  369. }
  370.  
  371. function saveVidSize(){
  372.     theme.savepreference( "videoWidth", view.width );
  373.     theme.savepreference( "videoHeight", view.height );
  374.     theme.savePreference("vidSnapper" , "false");
  375.     vidZoom.upToolTip = "Click To Set Video Size";
  376.     mediacenter.videoZoom = 50;
  377. }
  378.  
  379. function videoZoom(){
  380.     if("false"==theme.loadPreference("vidSnapper")){
  381.         mediacenter.videoZoom = 50;
  382.     }
  383.     if(mediacenter.videoZoom < 76){
  384.         mediacenter.videoZoom = 100;
  385.     }else if(mediacenter.videoZoom <101){
  386.         mediacenter.videoZoom = 150;
  387.     }else if(mediacenter.videoZoom < 156){
  388.         mediacenter.videoZoom = 200;
  389.     }else{
  390.         mediacenter.videoZoom = 75;
  391.     }
  392.     SnapToVideo();
  393.     updateZoomToolTip();
  394. }
  395.  
  396. function updateZoomToolTip(){
  397.  
  398.     vidZoom.upToolTip = "Video Size - [current: " + mediacenter.videoZoom + "%] - [next: ";
  399.  
  400.     if(mediacenter.videoZoom < 76){
  401.         nextZoom = 100;
  402.     }else if(mediacenter.videoZoom <101){
  403.         nextZoom = 150;
  404.     }else if(mediacenter.videoZoom < 156){
  405.         nextZoom = 200;
  406.     }else{
  407.         nextZoom = 75;
  408.     }
  409.  
  410.     vidZoom.upToolTip += nextZoom + "%]";
  411.     
  412.     if("false"==theme.loadPreference("vidSnapper")){
  413.         vidZoom.upToolTip = "Click To Set Video Size";
  414.     }
  415. }
  416.  
  417. function SnapToVideo(){
  418.  
  419.     theme.savePreference("vidSnapper" , "true");
  420.  
  421.     var zoom = mediacenter.videoZoom;
  422.     var viewWidth = (player.currentMedia.imageSourceWidth * (zoom/100.00));
  423.     var viewHeight = (player.currentMedia.imageSourceHeight * (zoom/100.00));
  424.  
  425.     view.width = viewWidth + 80;
  426.     view.height = viewHeight + 144;
  427. }
  428.  
  429. function checkSnapStatus(){
  430.     if("false"==theme.loadPreference("vidSnapper")){
  431.         loadVidSize();
  432.     }else{
  433.         SnapToVideo();
  434.     }
  435. }
  436.  
  437. function checkVideoPlayerState(){
  438.     if (player){
  439.         switch (player.playState){
  440.             case 0:        //undefined
  441.                 
  442.                 break;
  443.             case 1:        //stopped
  444.  
  445.                 break;
  446.             case 2:        //paused
  447.  
  448.                 break;
  449.             case 3:     //playing
  450.                 centerBox.visible = true;
  451.                 checkSnapStatus();
  452.                 if(!player.currentMedia.ImageSourceWidth>0){
  453.                     view.close();
  454.                     break;
  455.                 }
  456.                 break;
  457.             case 6:        //buffering
  458.                 
  459.                 break;
  460.             case 7:        //waiting
  461.                 
  462.                 break;
  463.             case 8:        //media ended
  464.                 
  465.                 break;
  466.             case 9:        //Transitioning
  467.                 
  468.                 break;
  469.             case 10:    //Ready
  470.                 
  471.                 break;
  472.             }
  473.             vidResize.enabled = true;
  474.             vidZoom.visible = true;
  475.         }
  476.  
  477.     if (!player.controls.isAvailable("Stop")) {
  478.         centerBox.visible = false;
  479.         vidResize.enabled = false;
  480.         vidZoom.visible = false;
  481.         view.width = 397;
  482.         view.height = 381;
  483.     }
  484. }
  485.  
  486. drawerStatus = false;
  487.  
  488. function toggleVidDrawer(){
  489.     if(!drawerStatus){
  490.         vidDrawer.moveTo(0,view.height-84,500);
  491.         vidDrawerButton.down = true;
  492.         vidDrawerFrame.visible = true;
  493.         drawerStatus = !drawerStatus;
  494.     }else{
  495.         vidDrawer.moveTo(0,view.height-130,500);
  496.         drawerStatus = !drawerStatus;
  497.     }
  498. }
  499.  
  500. function checkDrawer(){
  501.     drawerStatus = drawerStatus;
  502.     vidDrawerFrame.visible = drawerStatus;
  503. }
  504.  
  505. // info / content
  506.  
  507. function loadInfoPrefs(){
  508.     theme.savePreference( 'infoViewer', "true" );
  509. }
  510.  
  511. var infoGo = 0;
  512.  
  513. function showInfo(menu,nav,infoGo){
  514.     infoMenuBack.visible = menu;
  515.     infoNavSub.visible = nav;
  516.     webLinks.visible = false;
  517.     switch(infoGo){
  518.         case 0:
  519.             infoSub.backgroundImage = "";
  520.             break;
  521.         case 1:
  522.             infoMode = 1;    // call sections
  523.             navGo = 1;
  524.             navLimit = 6;
  525.             infoNavNext();
  526.             break;
  527.         case 2:
  528.             infoMode = 2;    // call sections
  529.             navGo = 1;
  530.             navLimit = 2;
  531.             infoNavNext();
  532.             break;
  533.         case 3:                // sshots
  534.             infoMode = 3;
  535.             navGo = 1;
  536.             navLimit = 11;
  537.             infoNavNext();
  538.             break;
  539.         case 4:                // web
  540.             infoMode = 4;
  541.             navGo = 1;
  542.             navLimit = 1;
  543.             webLinks.visible = true;
  544.             infoNavNext();
  545.             break;
  546.     }
  547. }
  548.  
  549. navGo = 1;
  550.  
  551. function infoNavNext(){
  552.     infoSub.backgroundImage = "c_sub_" + infoMode + "_" + navGo + ".jpg";
  553.     navCheck();
  554. }
  555.  
  556. function infoNavPrev(){
  557.     infoSub.backgroundImage = "c_sub_" + infoMode + "_" + navGo + ".jpg";
  558.     navCheck();
  559. }
  560.  
  561. function navCheck(){
  562.     if(navGo==1){
  563.         navPrev.enabled = false;
  564.         navNext.enabled = true;
  565.     }else if(navGo==navLimit && infoMode==infoMode){    // enable / disable sections
  566.         navNext.enabled = false;
  567.         navPrev.enabled = true;
  568.     }else{
  569.         navNext.enabled = true;
  570.         navPrev.enabled = true;
  571.     }
  572. }
  573.